Automatic threshold detection for tachometer signals

ABSTRACT

A method is described for automatically determining a proper threshold for a tachometer signal in order to produce desired tachometer pulses necessary for analysis of machine vibration data. A tachometer signal is low-pass filtered to exclude high frequency noise and a running derivative of the filtered tachometer waveform is taken to create a derivative waveform. Another waveform is created that includes only positive values from the derivative waveform that correspond to positive values in the low-pass filtered tachometer waveform. In general, a tachometer signal has the greatest derivative value (slope) when a tachometer pulse is present. Based on this observation, a threshold value is determined using both the low-pass filtered tachometer waveform and the positive-value derivative waveform along with statistics from both waveforms.

RELATED APPLICATIONS

This nonprovisional patent application claims priority as a divisional of U.S. nonprovisional patent application Ser. No. 14/296,480, titled “Automatic Threshold Detection for Tachometer Signals,” which claims priority to U.S. provisional patent application Ser. No. 61/835,684, filed Jun. 17, 2013, titled “Automatic Threshold Detection for Tachometer Signals,” the entire contents of which are incorporated herein by reference.

FIELD

This invention relates to analysis of machine vibration data. More particularly, this invention relates to a method for automatically determining a proper threshold for a tachometer signal in order to produce the desired tachometer pulses necessary for analysis of machine vibration data.

BACKGROUND

One of the most important characteristics of machine operation used in the analysis of vibration data is the rotational speed of the machine. Machine speed is often acquired from tachometer measurements. Accurate tachometer pulses are essential for applications such as order tracking, synchronous time averaging, single channel phase, Bode plots, and general turning speed calculations. Ideally, tachometer pulses are generated when illumination from a tachometer sensor passes over a section of reflective tape placed on a rotating portion of the machine, such as a rotating shaft. However, the shafts of most machines in industry do not have reflective tape. If they have reflective tape, often times the tape is covered with grime or has rubbed off or is otherwise damaged to some extent. Because a machine typically cannot be stopped in order to place reflective tape on the shaft, an analyst will collect tachometer data in hopes of getting a trigger from a keyway, a scratch on the shaft, or remnants of old reflective tape. The resulting tachometer waveform is typically noisy and small in amplitude and the tachometer pulses are not very distinctive.

An ideal tachometer waveform consists of a series of distinct pulses, wherein each pulse indicates a single revolution of the shaft. To generate a tachometer pulse sufficient for the applications mentioned above, a threshold is set such that a rising (or falling) edge of the tachometer signal triggers a pulse when it passes the threshold. This threshold is manually entered by an analyst. In an ideal situation, where reflective tape is present resulting in a strong tachometer signal, the chosen threshold value will generally be acceptable for all measurements. However, when reflective tape is not present, the level of the tachometer signal varies from one machine to the next and the necessary threshold will be different for each measurement.

What is needed, therefore, is an automatic method for calculating a proper threshold for a given tachometer signal in order to produce the desired tachometer pulses needed for machine vibration analysis.

SUMMARY

The various embodiments of the invention described herein extract an event from data. The data of interest is generally characterized by a rapid change in a signal amplitude. By applying a derivative to the signal, these rapid changes in amplitude become more evident and are much easier to see and quantify. When evaluating tachometer signals associated with a machine being monitored, the rapid change in signal amplitude occurs at a rate substantially equivalent to the running speed of the machine. Such tachometer signals may be generated by various sources, including but not limited to laser, optical, eddy current, magnetic, and LED sources.

Embodiments of the invention can also be applied to vibration signals having repetitive and impulsive features. One example of an impulsive signal is a signal associated with a bearing defect. By taking the derivative of an acceleration waveform (sometimes referred to as a “jerk”), a threshold value can be calculated using an embodiment of the invention that extracts a repetitive signal associated with the impulsive characteristic generated from a defective bearing. Embodiments of the invention may be applied to any vibration waveform to extract information associated with impulse-driven information.

A preferred method embodiment begins by passing a tachometer signal through a low-pass filter to exclude high-frequency noise. Preferably, the low-pass corner frequency of the filter is 250 Hz, but depending on the signal the desired corner frequency may vary between 100 Hz and 1000 Hz. Next, a running derivative of the filtered tachometer waveform is taken. The resulting signal is referred to herein as the derivative waveform (“Deriv_WF”). A new waveform is then created that includes only positive values from the derivative waveform that correspond to positive values in the associated low-pass filtered tachometer waveform. This new waveform is referred to herein as Deriv>0_WF. In general, a tachometer signal has the greatest derivative value (slope) when a tachometer pulse is present. Based on this observation, preferred embodiments of the method derive a threshold value using both the low-pass filtered tachometer waveform and Deriv>0_WF along with statistics from both waveforms. In alternative embodiments, a Deriv<0_WF waveform is derived using only negative values in the associated low-pass filtered tachometer waveform. A negative threshold value may be calculated for negative going pulses such as generated by proximity probe tachometers.

In preferred embodiments, determination of the tachometer threshold value is based on finding a specified number of peaks in the Deriv>0_WF waveform and locating their associated peaks in the low-pass filtered tachometer waveform. Using a combination of statistics derived from both waveforms, one of three options will be selected:

-   -   (1) a threshold is determined for the low-pass filtered         waveform, which in turn is used to produce tachometer pulses;     -   (2) although the low-pass filtered waveform does not provide a         sufficient signal to produce a tachometer pulse, the associated         Deriv>0_WF waveform does provide the information needed and         therefore a threshold is calculated and applied to the         Deriv>0_WF waveform that is used to generate tachometer pulses;     -   (3) neither the low-pass filtered waveform nor Deriv>0_WF         contains the necessary characteristics to produce a reliable         tachometer pulse and the analyst is warned that the acquired         signal is insufficient to generate tachometer pulses.

Preferred embodiments of the method include:

-   -   (1) three different methods to determine peaks in the         Deriv>0_WF;     -   (2) the ability to sort out peak values that are not consistent         with peak values associated with the running speed;     -   (3) determination of the threshold value based on various         statistical criteria.

Peaks representative of tachometer pulses in the raw tachometer waveform are determined from the peaks found in the Deriv>0_WF waveform. The Deriv>0_WF waveform consists of subsets or groups of positive peak values. (For example, in FIG. 4, such a group (or subset) contains all the peaks found between “A” and “E.” Another group contains the single peak between “F” and “G.”) In some embodiments of the method, the peaks in Deriv>0_WF are found as the first peak of a group of positive peak values. In alternative embodiments, the selected peaks in Deriv>0_WF correspond to either the largest derivative value or the last peak from each group of peak values. To ensure that the selected set of Deriv>0_WF peaks are associated only with the speed of the machine, outlying peaks are culled out using a sorting routine described hereinafter. This routine preferably includes four methods to determine the selected peaks based on calculations of the mean and standard deviation of the set of peaks.

Alternative embodiments of the method may employ a different statistical process, such as a mode, to find a frequently recurring family of peaks within the derivative waveform. For example, a statistical histogram, a cumulative distribution, or another probability density technique may be implemented to detect and identify a range of interest based on a mode or a most frequently recurring subset of data values within a population of data values from the derivative waveform.

BRIEF DESCRIPTION OF THE DRAWINGS

Further advantages of the invention are apparent by reference to the detailed description in conjunction with the figures, wherein elements are not to scale so as to more clearly show the details, wherein like reference numbers indicate like elements throughout the several views, and wherein:

FIG. 1 depicts a functional block diagram of a system for deriving information from a tachometer signal according to an embodiment of the invention;

FIGS. 2 and 3 depict flowcharts of steps of a method for determining a threshold for a tachometer signal according to a preferred embodiment of the invention; and

FIG. 4 depicts a portion of an example filtered tachometer waveform and a corresponding running derivative waveform.

DETAILED DESCRIPTION

FIG. 1 depicts a system 100 for deriving information from a tachometer signal. In the embodiment of FIG. 1, a tachometer 104 is attached to a machine 102 to monitor the rotational speed of a component of the machine 102, such as a rotating shaft. The tachometer 104 generates a tachometer signal that contains information about the rotational speed of the machine 102. The tachometer signal is provided to a data collector 106 comprising an analog-to-digital converter (ADC) 108 for sampling the tachometer signal, a low-pass filter 110, and buffer memory 112. The data collector 106 may be a digital data recorder manufactured by TEAC or a vibration data collector. In a preferred embodiment, the ADC 108 samples the tachometer signal at 48,000 samples/second. The low-pass filter 110 is preferably an FIR filter with 49 taps, preferably with a corner frequency set between 250 and 1000 Hz. In a preferred embodiment, the low-pass corner frequency is set at 250 Hz for rotational speeds of 900 RPM and higher.

In the embodiment of FIG. 1, the tachometer signal data is transferred from the data collector 106 to a threshold processor 114 that performs the calculations and other information processing tasks described herein. In an alternative embodiment, the calculations and processing are performed by a processor in the data collector 106.

As depicted in FIG. 2, a preferred method 10 for determining a threshold for a tachometer signal begins with the collection of the raw tachometer data (step 12). The tachometer signal data is passed through the low-pass filter 110 (step 14), which generates a filtered signal at its output referred to herein as “Filtered_WF.”

Once Filtered_WF is stable (after about the 50^(th) sample), the root-mean-square (RMS) value of Filtered_WF is calculated (step 16), and the waveform is centered about the RMS value and then centered about zero with the RMS offset (DC offset) (step 18). The Crest Factor (CF) for Filtered_WF is then calculated according to:

${CF} = {\frac{{Largest}\mspace{14mu}{peak}\mspace{14mu}{of}\mspace{14mu}{Filtered\_ WF}}{{RMS}\mspace{14mu}{of}\mspace{14mu}{Filtered\_ WF}}{\left( {{step}\mspace{14mu} 20} \right).}}$ This value is referred to herein as Filtered_WF_CF_RMS.

A running derivative of Filtered_WF is taken which is referred to as the Deriv_WF signal (step 22), wherein the zero value derivative point at the beginning is dropped. The Crest Factor (CF) for the Deriv_WF signal is calculated according to:

${CF} = {\frac{{Largest}\mspace{14mu}{peak}\mspace{14mu}{of}\mspace{14mu}{Deriv\_ WF}}{{RMS}\mspace{14mu}{of}\mspace{14mu}{Deriv\_ WF}}{\left( {{step}\mspace{14mu} 24} \right).}}$ This value is referred to as Deriv_CF_RMS.

Using the Deriv_WF signal, a new waveform is created from the positive values in Filtered_WF that have only the positive derivative values (slopes). The new waveform retains all values that are greater than zero while setting all negative values (i.e. slope≤0) to zero (step 26). The resulting signal, referred to herein as Deriv>0_WF, looks like a “rectified” version of Deriv_WF, although this waveform is not actually rectified. Specifically, values greater than zero in Filtered_WF are determined, the slope of the resulting signal is calculated, and any slopes that are less than or equal to zero are set to zero. The mean value (μ) of the resulting signal is found and referred to as Deriv>0 Mean, and the standard deviation (σ) is found and referred to as Deriv>0_SD (step 28). In the preferred embodiment, values of zero are not used to calculate Deriv>0_Mean and Deriv>0_SD. In some embodiments, Deriv>0_WF is created in an opposite manner using only the negative slope of Deriv_WF, and the absolute value is taken of the resulting signal for further analysis.

The upper portion of FIG. 4 depicts an example of Deriv>0_WF showing a set of peaks starting after 0.0075 seconds (point “A”) and ending just after 0.01 seconds (point “E”). The lower portion of FIG. 4 is the corresponding Filtered_WF that was used to produce Deriv>0_WF in the upper portion. The vertical lines show the derivative (slope) values associated with points in Filtered_WF.

In a preferred embodiment, all peaks in Deriv>0_WF are found by one of three methods (step 30). Each method evaluates every group of points defined as a set of points (positive derivatives) bounded by zero:

-   -   (1) The first peak in each set is evaluated. In this method, the         peak is the first peak of the set where the peak is the most         positive value before becoming less positive. For example, see         point “B” in FIG. 4.     -   (2) Choose the “steepest” slope or largest derivative. This will         be the tallest peak in each set. The tallest peak is associated         with the steepest slope in the set. For example, see point “C”         in FIG. 4.     -   (3) Choose the last peak in the set. This point is associated         with the steepest slope of the line just before the peak occurs         in Filtered_WF. For example, see point “D” in FIG. 4.

The N number of largest peaks are then found in Deriv>0_WF (step 32). The value of N can be user-selected or calculated as described in a process performed in a preferred embodiment to calculate the number of peaks for analysis. Typically, N is 20 for one second of data at speeds greater than 1800 RPM. The largest of these N peaks is found and the Crest Factor (CF) for the Deriv>0_WF data is determined according to:

${CF} = {\frac{{{Largest}\mspace{14mu}{of}\mspace{14mu} N\mspace{14mu}{peaks}\mspace{14mu}{of}\mspace{14mu}{Deriv}} > {0{\_ WF}}}{{{RMS}\mspace{14mu}{of}\mspace{14mu}{Deriv}} > {0{\_ WF}}}{\left( {{step}\mspace{14mu} 34} \right).}}$ This value is referred to as Deriv>0_CF_RMS. When calculating the RMS value of the Deriv>0_WF, values of zero are included.

The N peaks found in step 32 are sorted by amplitude from largest to smallest (step 36), and any of the N peaks greater than the boundary of μ+σ are discarded as outliers (step 38). A statistical method used in a preferred embodiment to discard the outlier data is described in hereinafter (method 2). A Crest Factor for the remaining values is calculated according to:

${CF} = {\frac{{{Largest}\mspace{14mu}{of}\mspace{14mu} N\mspace{14mu}{peaks}\mspace{14mu}{of}\mspace{14mu}{Deriv}} > {0{\_ WF}\mspace{14mu}{excluding\_ outliers}}}{{{RMS}\mspace{14mu}{of}\mspace{14mu}{Deriv}} > {0{\_ WF}{\_ excluding}{\_ outliers}}}{\left( {{step}\mspace{14mu} 40} \right).}}$ This value is referred to as Adj_Deriv>0_CF_RMS. Preferably, the RMS calculation used for the Adj_Deriv>0_CF_RMS value does not incorporate the discarded peak values.

Next locations in Deriv>0_WF are determined where the signal crosses zero to the right of the peaks (FIG. 4, points “E” and “G”)(step 42). These locations coincide with a peak in the Filtered_WF signal. The “base” value of Deriv>0_WF is then determined for each of the N peaks found in step 32 (step 44). This base value is preferably associated with the zero crossing of the Filtered_WF signal as indicated by point “A” in FIG. 4 or at a value where the derivative (slope) changes from negative to positive, such as point “F” in FIG. 4 which corresponds to a valley in the Filtered_WF data where the derivative changes from negative to positive.

In preferred embodiments, the analysis used for threshold calculations is based on Filtered_WF data using either of two methods:

-   -   (1) Using the difference between the Filtered_WF peak values         determined in step 42 and the Filtered_WF values associated with         the “base” value of Deriv>0_WF found in step 44. This difference         is referred to as “Max_Diff” (step 46).     -   (2) Using the Filtered_WF peak values associated with the         Deriv>0_WF values found in step 42. This value is referred to as         “Max Value” (step 48).

The ratio of the CF values found in steps 40 and 20 is expressed as:

${{Adj}\text{/}{Filter\_ CF}{\_ RMS}} = {\frac{\left( {{Adj\_ Deriv} > {0{\_ CF}{\_ RMS}}} \right)}{\left( {{Filtered\_ WF}{\_ CF}{\_ RMS}} \right)}{\left( {{step}\mspace{14mu} 50} \right).}}$ If Adj/Filter_CF_RMS is greater than or equal to three (step 52) and no maximum peaks were discarded in Deriv>0_WF (step 53), then the Deriv>0_WF waveform is used as the signal from which tachometer pulses are derived. The tachometer signal threshold (step 54) is calculated from the Deriv>0_WF waveform. If maximum peaks were discarded in Deriv>0_WF (step 53), then a “bad data” indication is generated (step 55). If Adj/Filter_CF_RMS is less than three (step 52), then the Filtered_WF waveform is used to create tachometer pulses and as a basis to set the tachometer signal threshold (step 56). Whichever waveform is used to set the threshold is referred to herein as the “decision WF.”

Calculation of Threshold Value

The set of amplitudes (values) of the decision WF used to calculate the threshold limit are preferably within μ±2σ, where the mean and standard deviation are calculated from the set of values used in calculating Max_Diff and Max_Value (steps 46 and 48). Details of a statistical method for discarding data outside the limits is described hereinafter (Method 3 with n=2).

For calculations related to Max_Diff: Max_Threshold=Max+Base Value (step 58); and Min_Threshold=Min+Base Value (step 60) where

-   -   =change (difference value) from the peak in the Filtered_WF         waveform and the closest left-most base value; and     -   Base value=amplitude value at a position in the Filtered_WF         waveform where the slope changes from <zero to positive.         Min_Threshold can be greater than Max_Threshold because the Max         value could have a small base value compared to Min which could         have an associated large base value.

For calculations related to Max_Value:

-   -   Max_Threshold=Amplitude of the largest peak taken from the         sorted “N” peaks extracted from Filtered_WF (step 36) with Base         Value=0 (step 62); and     -   Min_Threshold=Amplitude of the smallest peak taken from the         sorted “N” peaks extracted from the Filtered_WF (step 36) with         Base Value=0 (step 64).

Calculation of the Percent Difference Threshold (referred to herein as %_Diff_Threshold) indicates how much the difference between two values change from the average:

${{Percent}\mspace{14mu}{Difference}\mspace{14mu} T\mspace{14mu}{res}\mspace{14mu}{old}} = {\frac{({Max\_ Threshold}) - ({Min\_ Threshold})}{\left( \frac{({Max\_ Threshold}) + ({Min\_ Threshold})}{2} \right)}{\left( {{step}\mspace{14mu} 66} \right).}}$

The Percent Mean Filtered Max Peak (referred to herein as %_Mean_Fltd_Max_PK) is the percent change in the amplitude values of the maximum peaks in the Filtered_WF data:

${\%{\_ Mean}{\_ Fltd}{\_ Max}{\_ PK}} = {\left\lbrack {1\left( \frac{\mu - \sigma}{\mu} \right)} \right\rbrack\mspace{14mu} 100\%\mspace{14mu}{\left( {{step}\mspace{14mu} 68} \right).}}$ This parameter is the percent mean taken from the “N” maximum peaks of the Filtered_WF data, where N is either a user-selected number of peaks or is calculated as described hereinafter in a process that calculates the number of peaks for analysis. The mean and standard deviation are calculated for the set of maximum peak values taken from the Filtered_WF data.

If % Mean_Fltd_Max_PK from step 68 is larger than ten, then the data is considered “questionable.” This means the data “jumps” around too much and it is difficult, if not impossible, to set a realistic threshold. A threshold can still be calculated but will probably not be useful.

As shown in FIG. 3, if Adj/Filter_CF_RMS from step 50 is less than three (step 52) and no peaks were discarded from the statistical analysis of the maximum peaks in Deriv>0_WF (step 70), then the method proceeds to evaluate the magnitude of % Mean_Fltd_Max_PK determined in step 68. If % Mean_Fltd_Max_PK is less than or equal to ten (which means Max_Threshold and Min_Threshold are reasonably close in value)(step 72), then: Thrsh10=Min(Max_Threshold and Min_Threshold)−2*(|Max_T res old Min_T res old|) (step 74). If %_Mean_Fltd_Max_PK is greater than ten (step 72), then: Thrsh10=Min(Max_Threshold and Min_Threshold)−(|Max T res old Min T res old|) (step 76) and the method proceeds to step 78.

If %_Diff_Threshold (calculated at step 68) is greater than 40 (step 78), then

${Threshold} = {{Mid\_ Threshold} = \frac{\left( {T\mspace{14mu}{res}\mspace{14mu}{old\_ multiplier}} \right)\left( {{{Max\_ T}\mspace{14mu}{res}\mspace{14mu}{old}} + {{Min\_ T}\mspace{14mu}{res}\mspace{14mu}{old}}} \right)}{2}}$ where Threshold_multiplier is a user-selectable value between 0 and 1 (step 80). In preferred embodiments, the value used is 1. If % Diff_Threshold (calculated at step 68) is less than or equal to 40 (step 78), then the method proceeds to step 82.

If %_Mean_Fltd_Max_PK is greater than or equal to 0.5 (step 82), then Threshold=Thrsh10 (step 84). If %_Mean_Fltd_Max_PK is less than 0.5 (step 82), then Threshold=0.67*Min(Max_Threshold and Min_Threshold) (step 86). Generally, %_Mean_Fltd_Max_PK is less than 0.5 when data is very steady and the values of the peaks are all about the same amplitude.

Referring back to step 52 of FIG. 3, if Adj/Filter_CF_RMS is less than three and peaks were discarded from the statistical analysis of the maximum peaks in Deriv>0_WF (step 70), then the method proceeds to step 88. If % Diff_Threshold is less than or equal to 40 (step 88), then Threshold=0.5×Min+Min base value (step 90). If % Diff_Threshold is greater than 40 (step 88), then Threshold=Min_Threshold (step 92). It should be noted that if peaks are discarded, then there are peaks in the original “number of peaks for analysis” which are statistical outliers (values greater than μ±nσ).

Referring again to step 52 of FIG. 3, if Adj/Filter_CF_RMS is greater than or equal to three and no peaks were discarded from statistical analysis of the maximum peaks in Deriv>0_WF, then the Deriv>0_WF waveform is used as the tachometer signal and to set the threshold (step 54) according to: Threshold=μ+2σ (step 94) where μ and σ are calculated from the N peaks of the Deriv>0_WF waveform.

Tables 1 and 2 provide a summary of the threshold calculation.

TABLE 1 Data Calculations Calculations to determine Threshold Filtered_WF_CF_RMS (step 20) Deriv_CF_RMS (step 24) Deriv > 0_CF_RMS Equivalent Equivalent Equivalent Values Values Values (step 34) Value Value Value Differ Differ Differ Adj_Deriv > 0_CF_RMS (step 40) Adj_Deriv > 0_CF_RMS ≥3 <3 ≥3 <3 Filtered_WF_CF_RMS (step 52) Percent Difference ≤40% >40% ≤40% >40% Threshold (step 88) Threshold Value μ + 2σ for See Table 2. Mid_Threshold Bad Data 0.5*Min + Min_Threshold Deriv > 0_WF Base Value

TABLE 2 Percent Mean Filtered Max Peak Threshold Value <0.5 0.67 * Min(Max_Threshold and Min_Threshold) ≥0.5 and ≤10 Min of (Max_Threshold and Min_Threshold) − 2*(|Max_T res old Min_T res old|) >10 Min(Max_Threshold and Min_Threshold) − (|Max_T res old Min_T res old|)

Method to Determine the Number (N) of Peaks for Analysis

Following is a preferred embodiment of a routine for determining the number of largest peaks in a given waveform necessary to effectively evaluate data for determination of a threshold level. To calculate the number peaks (N) for analysis:

If (Filter_WF_Kurtosis>Deriv_CF_RMS) AND

(Deriv>0_CF_RMS>Deriv_CF_RMS) AND

(Deriv>0_CF_RMS>Filter_WF_Kurtosis) THEN

Peak Multiplier=1.5

Else

Peak Multiplier=0.75

Endif

N=[Integer value (rounded up) of ((Peak Multiplier)×(Cycles of RPM))]

where:

-   -   Filter_WF_Kurtosis is the kurtosis of the filtered waveform.         Kurtosis is an indication of the shape of the distribution of         data. A value of 3 represents a normal distribution. Values less         than 3 indicate flatter distributions. Values greater than 3         indicate a sharper (more narrow) distribution.     -   Deriv_CF_RMS is the crest factor calculated from the waveform         produced by taking the derivative of the filtered waveform         (Deriv_WF) as calculated above in step 24.     -   Deriv>0_CF_RMS is the crest factor calculated form the waveform         produced from derivative values greater than zero (Deriv>0_WF)         as calculated above in step 34.         Peak Multiplier is the value used to scale the final number of         peaks for analysis.         Cycles of RPM is the number of RPM cycles present in a given         waveform, calculated as:         Cycles of RPM=Sampling Rate (sec)×(Rated Speed (RPM)/60)

Methods for Sorting Out Statistical Outliers

The following routine takes an array of data values and discards values outside the statistically calculated boundaries. In a preferred embodiment, there are four methods or criteria for setting the boundaries.

Method 1: Non-Conservative, Using Minimum and Maximum Statistical Boundaries

Consider an array of P values (or elements) where P₀ represents the number of values in the present array under evaluation. Now let P⁻¹ represent the number of values in the array evaluated a single step before P₀, let P⁻² represent the number of values in the array evaluated a single step before P⁻¹, and let P⁻³ represent the number of values in the array evaluated a single step before P⁻².

Step 1:

While evaluating the array of values for either the first time or P₀≠P⁻¹,

{ Calculate the mean (μ) and standard deviation (σ) for P₀   ${{{If}\mspace{14mu}\frac{n\;\sigma}{\mu}} \geq x},{{{where}\mspace{14mu} x} = {{0.1\mspace{14mu}{and}\mspace{14mu} n} = 1}},{2\mspace{14mu}{or}\mspace{14mu} 3\mspace{14mu}{in}\mspace{14mu}{the}\mspace{14mu}{preferred}}$  embodiment, then   Include array values such that   μ − nσ < values < μ + nσ Else   STOP, values are within statistical boundaries. Endif }

Step 2:

If P₀ = P⁻¹, then  While P⁻¹ ≠ P⁻², and P₀ = P⁻¹   {   Calculate the mean (μ) and standard deviation (σ) for P₀    ${{{If}\mspace{14mu}\frac{n\;\sigma}{2\mu}} \geq x},{{{where}\mspace{14mu} x} = {{0.1\mspace{14mu}{and}\mspace{14mu} n} = 1}},{2\mspace{14mu}{or}\mspace{14mu} 3\mspace{14mu}{in}\mspace{14mu}{the}\mspace{14mu}{preferred}}$   embodiment, then    Include array values such that     ${\mu - \frac{n\;\sigma}{2}} < {values} < {\mu + \frac{n\;\sigma}{2}}$   Else    STOP, values are within statistical boundaries.   Endif  } Endif

Step 3:

If P₀=P⁻¹=P⁻², and P⁻²≠P⁻³, then

-   -   Calculate the mean (μ) and standard deviation (σ) for P₀     -   Include array values such that     -   0.9μ<values<1.1μ         Else     -   STOP, values are within statistical boundaries.         Endif

Method 2: Non-conservative, Using Maximum Statistical Boundary Only (No Minimum Boundary)

Use the same procedure as in Method 1 except only values exceeding the upper statistical boundaries are discarded. The minimum boundary is set to zero.

Method 3: Conservative, Using Minimum and Maximum Statistical Boundaries

Discard values based on Method 1, Step 1 only.

Method 4: Conservative, Using Maximum Statistical Boundary Only (No Minimum Boundary)

Discard values based on Method 1, Step 1 only and based on values exceeding the upper statistical boundaries. The minimum boundary is set to zero.

Example of Method 1 for Sorting Out Statistical Outliers

As an example of the sorting Method 1, consider an original set of values, P₀, containing the 21 values listed below in Table 3 below, with n=1.

TABLE 3 0.953709 0.828080 0.716699 0.653514 0.612785 0.582031 0.579209 0.557367 0.545801 0.495215 0.486426 0.486053 0.475123 0.472348 0.467129 0.465488 0.446327 0.440497 0.437959 0.427256 0.411627

The mean (μ) of this original set, P₀, is 0.54955 and standard deviation (σ) is 0.13982. Therefore, in Step 1 of Method 1,

$\frac{n\;\sigma}{\mu} = {{1\frac{0.13982}{0.54955}} = 025442.}$ Since 0.25442 is greater than 0.1, calculate μ−nσ=0.54955−1*0.13982=0.409735 and μ+nσ=0.54955+1*0.13982=0.689373.

Next, define the set P⁻¹=P₀ and define a new set P₀, the values of which are all the values of P⁻¹ that are between the values μ+σ=0.689343 and μ−σ=0.409735. The set P₀ now contains the values listed below in Table 4, wherein three outlier values have been eliminated.

TABLE 4 0.653514 0.612785 0.582031 0.579209 0.557367 0.545801 0.495215 0.486426 0.486053 0.475123 0.472348 0.467129 0.465488 0.446327 0.440497 0.437959 0.427256 0.411627

Since P₀≠P⁻¹, Step 1 is repeated, where for the set P₀:

-   -   μ=0.50234,     -   σ=0.06946,     -   σ/μ=0.138263,     -   μ+σ=0.571797, and     -   μ−σ=0.432887.

Now define the set P⁻²=P⁻¹, and P⁻¹=P₀ and define a new set P₀, the values of which are all the values of P⁻¹ that are between the values μ+α=0.571797 and μ−σ=0.432887. The set P₀ now contains the values listed below in Table 5, wherein four more outlier values have been eliminated.

TABLE 5 0.557367 0.545801 0.495215 0.486426 0.486053 0.475123 0.472348 0.467129 0.465488 0.446327 0.440497 0.437959

Since P₀≈P⁻¹, Step 1 is repeated, where for the set P₀:

-   -   μ=0.481311,     -   σ=0.037568, and     -   σ/μ=0.078053.

Since

-   -   σ/μ=0.078053≤1,         all the members of the array P₀ are statistically close in value         and need no more sorting.

If at any point in the calculations P₀=P⁻¹ and P⁻¹≠P⁻², then Step 2 would be executed instead of Step 1. In the example above, since P₀≠P⁻¹ for every iteration, only Step 1 was necessary for the calculations.

The foregoing description of preferred embodiments for this invention have been presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise form disclosed. Obvious modifications or variations are possible in light of the above teachings. The embodiments are chosen and described in an effort to provide the best illustrations of the principles of the invention and its practical application, and to thereby enable one of ordinary skill in the art to utilize the invention in various embodiments and with various modifications as are suited to the particular use contemplated. All such modifications and variations are within the scope of the invention as determined by the appended claims when interpreted in accordance with the breadth to which they are fairly, legally, and equitably entitled. 

The invention claimed is:
 1. A method for determining peak amplitude values in a tachometer signal generated by a tachometer attached to a particular machine in order to calculate a threshold value for the tachometer signal and for determining associated statistical outlier values, the tachometer signal including pulses that are indicative of a rotational speed of a rotating component of a machine, wherein the threshold value is used to reliably trigger tachometer pulses for the particular machine based on rising or falling edges of the tachometer signal, the method comprising: (a) sensing the tachometer signal using the tachometer attached in proximity to a rotating component of the particular machine, the tachometer signal including some peak values associated with the tachometer pulses in the tachometer signal and some peak values associated with noise, wherein due to a lack of reflective tape or other distinctive feature on the rotating component, the tachometer signal is noisy and the tachometer pulses are not distinct from the noise, wherein due to variations in the peak values, the threshold value determined for the particular machine will be different than a threshold value determined for another machine; (b) filtering the tachometer signal using a low pass filter to remove high-frequency noise, thereby producing a filtered tachometer signal; (c) taking a running derivative of the filtered tachometer signal using a processor to generate a derivative signal that includes peak values associated with steep slopes in the filtered tachometer signal, which peak values indicate the tachometer pulses as opposed to peaks associated with noise, the peak values in the derivative signal thereby making the pulses more distinctive than they are in the tachometer signal generated in step (a) and therefore easier to identify for use in determining the threshold value; (d) the processor determining a set of the peak values in the derivative signal over a period of time and defining P₀ as the number of peak values in the set; (e) the processor calculating a mean amplitude value μ and a standard deviation amplitude value σ of the peak values in the set; (f) if ${\frac{n\;\sigma}{\mu} < x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then the processor using the set of peak values determined in step (d) to calculate the threshold value for the tachometer signal and forgoing performance of steps (g) through (o); (g) if ${\frac{n\;\sigma}{\mu} \geq x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then the processor (g1) removing from the set any peak values that are less than μ−nσ or greater than μ+nσ; (g2) setting P⁻¹ =P₀, and (g3) defining a new value of P₀ to be equivalent to the number of peak values remaining in the set after step (g1); (h) if P⁻¹≠P₀, then the processor repeating steps (e) through (g); (i) if P⁻¹=P₀, then the processor calculating a mean amplitude value μ and a standard deviation amplitude value σ of the P₀ number of peak values in the set; (j) if ${\frac{n\;\sigma}{2\mu} < x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then the processor using the set of peak values remaining after step (g1) to calculate the threshold value for the tachometer signal and forgoing performance of steps (k) through (o); (k) if ${\frac{n\;\sigma}{2\mu} \geq x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then the processor (k1) removing from the set any peak values that are less than $\mu - \frac{n\;\sigma}{2}$  or greater than ${\mu + \frac{n\;\sigma}{2}};$  and (k2) setting P⁻¹=P₀; and (k3) defining a new value of P₀ to be equivalent to the number of peak values remaining in the set after step (k1); (l) if P⁻¹≠P₀, then the processor returning to step (e); (m) if P⁻¹=P₀, then the processor (m1) calculating a mean amplitude value μ of the P₀ number of peak values in the set; (m2) removing from the set any peak amplitude values that are less than (1−x) ×μ or greater than (1+x)×μ; (m3) setting P⁻¹=P₀; and (m4) defining a new value of P₀ to be equivalent to the number of peak values remaining in the set after step (m2); (n) if P⁻¹≠P₀, then the processor returning to step (e); (o) if P⁻¹=P₀, then the processor using the set of peak values remaining after step (m2) to calculate the threshold value for the tachometer signal; (p) detecting tachometer pulses based on rising or falling edges of the tachometer signal that exceed the threshold value calculated in step (o); (q) determining a rotational speed of the particular machine based on the tachometer pulses detected in step (p); and (r) analyzing vibration data collected from the particular machine using the rotational speed determined in step (q).
 2. The method of claim 1 wherein x =0.1.
 3. A computer-implemented method for determining a plurality of statistically significant peak values of a tachometer signal and excluding statistical outlier values prior to further processing of the tachometer signal, the tachometer signal including tachometer pulses that are indicative of a rotational speed of a rotating component of a machine, wherein due to a lack of reflective tape or other distinctive feature on the rotating component, the tachometer signal is noisy, and the tachometer pulses are not distinctive and have levels that vary from one machine to the next, the tachometer signal including some peak values associated with the tachometer pulses and some peak values associated with noise, the method comprising: (a) determining a set of peak values in the signal and defining P₀ as the number of peak values, the set of peak values associated with steep slopes in the tachometer signal, which peak values indicate the tachometer pulses as opposed to the peak values associated with noise; (b) calculating a mean amplitude value μ and a standard deviation amplitude value σ of the peak values in the set; (c) if ${\frac{n\;\sigma}{\mu} < x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then using the set of peak values determined in step (a) for setting a threshold value for the tachometer signal and forgoing performance of steps (d) through (l); (d) if ${\frac{n\;\sigma}{\mu} \geq x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then (d1) removing from the set any peak values that are less than a first lower statistical boundary or greater than a first upper statistical boundary, wherein one or both of the first lower statistical boundary and the first upper statistical boundary depend at least in part on the values of μ and σ calculated in step (b); (d2) setting P⁻¹ =P₀, and (d3) defining a new value of P₀ to be equivalent to the number of peak values remaining in the set after step (d1); (e) if P⁻¹≠P₀, then repeating steps (b) through (d); (f) if P⁻¹=P₀, then calculating a mean amplitude value μ and a standard deviation amplitude value σ of the P₀ number of peak values in the set; (g) if ${\frac{n\;\sigma}{2\mu} < x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then using the set of peak values remaining after step (d1) for setting a threshold value for the tachometer signal and forgoing performance of steps (h) through (l); (h) if ${\frac{n\;\sigma}{2\mu} \geq x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then (h1) removing from the set any peak values that are less than a second lower statistical boundary or greater than a second upper statistical boundary, wherein one or both of the second lower statistical boundary and the second upper statistical boundary depend at least in part on the values of μ and σ calculated in step (f); and (h2) setting P⁻¹=P₀; and (h3) defining a new value of P₀ to be equivalent to the number of peak values remaining in the set after step (h1); (i) if P⁻¹≠P₀, then returning to step (b); (j) if P⁻¹=P₀, then (j1) calculating a mean amplitude value μ of the P₀ number of peak values in the set; (j2) removing from the set any peak values that are less than a third lower statistical boundary or greater than a third upper statistical boundary, wherein one or both of the third lower statistical boundary and the third upper statistical boundary depend at least in part on the value of μ calculated in step (j1); (j3) setting P⁻¹=P₀; and (j4) defining a new value of P₀ to be equivalent to the number of peak values remaining in the set after step (j2); (k) if P⁻¹≠P₀, then returning to step (b); (l) if P⁻¹=P₀, then using the set of peak amplitude values remaining after step (j2) for setting a threshold value for the tachometer signal; (m) using the threshold value to detect tachometer pulses in the tachometer signal; (n) determining a rotational speed of the machine based on the tachometer pulses; and (o) analyzing vibration data collected from the machine using the rotational speed.
 4. The method of claim 3 wherein x =0.1.
 5. The method of claim 3 wherein the first lower statistical boundary is μ−nσ and the first upper statistical boundary is μ+nσ.
 6. The method of claim 3 wherein the second lower statistical boundary is $\mu - \frac{n\;\sigma}{2}$ and the second upper statistical boundary is $\mu + {\frac{n\;\sigma}{2}.}$
 7. The method of claim 3 wherein the third lower statistical boundary is (1−x)×μ and the third upper statistical boundary is (1+x)×μ.
 8. The method of claim 3 wherein the first, second, and third lower statistical boundaries are set to zero.
 9. A computer-implemented method for determining a plurality of statistically significant amplitude values of a tachometer signal and excluding statistical outlier values prior to further processing of the tachometer signal, the tachometer signal including tachometer pulses that are indicative of a rotational speed of a rotating component of a machine, wherein due to a lack of reflective tape or other distinctive feature on the rotating component, the tachometer signal is noisy, and the tachometer pulses are not distinctive and have levels that vary from one machine to the next, the tachometer signal including some peak values associated with the tachometer pulses and some peak values associated with noise, the method comprising: (a) determining a set of peak values in the signal and defining P₀ as the number of peak values, the set of peak values associated with steep slopes in the tachometer signal, which peak values indicate the tachometer pulses as opposed to the peak values associated with noise; (b) calculating a mean amplitude value μ and a standard deviation amplitude value σ of the peak values in the set; (c) if ${\frac{n\;\sigma}{\mu} < x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then using the set of peak values determined in step (a) for setting a threshold value for the tachometer signal and forgoing performance of steps (d) through (l); (d) if ${\frac{n\;\sigma}{\mu} \geq x},$  where x is a real number, 0<x <1, and n =1, 2 or 3, then (d1) removing from the set any peak values that are less than a lower statistical boundary or greater than an upper statistical boundary, wherein one or both of the lower statistical boundary and the upper statistical boundary depend at least in part on the values of μ and σ calculated in step (b); and (d2) using the set of peak values remaining after step (d1) for setting a threshold value for the tachometer signal.
 10. The method of claim 9 wherein the lower statistical boundary is set to zero.
 11. The method of claim 9 wherein x =0.1. 